包装类
- 基本数据类型所对应的引用数据类型。
- 基本数据类型存在于栈中,引用数据类型存在于堆中。栈存放的是对象的地址。
- Object可统一所有数据,包装类的默认值是null.
基本数据类型 | 包装数据类型 |
---|---|
byte | Byte |
short | Short |
int | Int |
long | Long |
float | Float |
double | Double |
boolean | Boolean |
char | Character |
1. 装箱和拆箱
装箱
基本类型转成引用类型的过程。
使用构造方法传参方法。
- 使用
valueOf()
方法。
1.1. 拆箱
引用类型转成基本类型的过程。
使用
xxxValue
方法,xxx
为基本数据类型。
1.2. JDK1.5之后,提供自动装箱拆箱
自动装箱的过程实际上是调用了valueOf()方法。
int age = 30;
// 自动装箱
Integer integer = age;
// 自动拆箱
int age2 = integer;
2. 不同类型间的转换方式
8种包装类提供不同类型间的转换方式:
- Number父类中提供6个共性方法。
- parseXXX()静态方法。
基本类型转字符串
+号拼接空串。
引用数据类型类的
toString()
静态方法int n = 15; Integer.toString(n); // f // 第二个参数表转换成多少进制的数 可选 Integer.toString(n, 16); // f // 相当于Integer.toHexString(n);
字符串转基本类型
需确保字符串可以正常转换否则报错。
parseXXX()
String str = "150"; int n = Integer.parseInt(str);
2.1. boolean字符串形式转换成基本类型时
"true" 可转换成true,除了"true"以外的字符串均转换成false。
String str = "true";
Boolean.parseBoolean(str); // true
String str2 = "123kj1l2j3kl";
Boolean.parseBoolean(str2); // false